/**
* Copyright (C) 2021
* All rights reserved.
*
* Author     : Wang Haibin
* E-mail     : wanghaibin@qiyi.com
* Version    :
* Date       : Wed 24 Feb 2021 03:35:15 PM CST
* Destription: 采用直接连接动态链接库方式加载动态库
*
*  验证方法: 执行 test  test_dy 查看调用func_b的结果差异
*  结论:
*       1、采用编译时直接连接链接动态库, 在运行时调用的同名函数均为外部主函数定义的函数 见test 执行结果
*       2、采用dlopen 模式调用的函数中引用外部同名函数 func_same 实际上调用的是动态库内容部的函数, 见test_dy
*       3、当主库中不存在同名函数(func_same)时 则各个动态库中的对外函数内部调用的同名函数使用一个so中的函数;
*           使用编译时-L 后最先出现的so中的函数,见test_2so执行结果
*/
#include <stdio.h>

#include "mylib.h"

void func_same() {
    printf("call %s:%s:%d, func_b addr=%p\n", __FILE__, __func__, __LINE__, func_same);
}

int main()
{
    func_same();
    func_a();
}
